Systems and methods for managing profiles

ABSTRACT

Methods and systems for managing profiles for electronic content. The methods and systems may involve profiles for a plurality of electronic content items. If a user interaction with an electronic content item of the plurality of electronic content items meets an event definition, the user interaction may be identified as an event associated with the electronic content and recorded in the profile.

CROSS REFERENCE TO RELATED APPLICATIONS

This application claims priority from U.S. Provisional PatentApplication No. 61/417,261, filed on Nov. 25, 2010 and U.S. ProvisionalPatent Application No. 61/538,101 filed on Sep. 22, 2011. The completedisclosure of each of these provisional patent applications is herebyincorporated by reference.

TECHNICAL FIELD

The described embodiments relate to systems and methods for managingprofiles, and in particular, to systems and methods for managingprofiles of electronic content.

BACKGROUND

Electronic devices may display electronic content as text, images,audio, video or a combination thereof, to a user. One example of anelectronic device is an electronic reading device. One example ofelectronic content is an electronic publication. An electronicpublication may also be referred to as an “e-book” or a digital book,and is a digital publication that includes text, images, audio, video ora combination thereof. An electronic publication may be produced by,published by, accessed by, stored by, or readable on electronic readingdevices. Electronic publications may be digitized versions of printedmaterials or may not have a printed equivalent.

Electronic reading devices that are specifically designed for accessing,storing, or displaying electronic publications for a user to read may bereferred to as “e-readers”, “e-book readers”, “e-book devices”, and soon. Other computing devices such as personal computers, smart phones,mobile phones, tablet computers, and so on, can also access, store ordisplay electronic publications and other electronic content for a user.Some e-readers use electronic ink, or “e-ink”, technology to display anelectronic publication to a user in a manner that is preferred by somereaders. E-readers may include wired or wireless network connectivity inorder to access copies of electronic content, such as electronic books,for display to a user.

SUMMARY

In a first aspect, embodiment described herein may provide a method ofmanaging profiles for electronic content comprising: storing a pluralityof profiles for a plurality of electronic content items, wherein eachprofile corresponds to an electronic content item selected from theplurality of electronic content items; if a user interaction with theelectronic content item meets an event definition, identifying the userinteraction as an event associated with the electronic content item,wherein the identifying step is carried out using a processor;collecting data corresponding to the event associated with theelectronic content item, wherein the data comprises a pagestamp, whereineach pagestamp indicates a reference point within the electronic contentitem; and recording at least a portion of the data corresponding to theevent as a data entry in the profile corresponding to the electroniccontent item, wherein the data entry comprises the pagestamp.

In accordance with some embodiments, the plurality of electronic contentitems may be a plurality of electronic publications, and the userinteraction with the electronic content item may be a user interactionwith a page of an electronic publication of the plurality of electronicpublications, and the pagestamp corresponds to the page within theelectronic publication.

In accordance with further embodiments, the method may further comprisecomputing a score for each reference point in the electronic contentitem using data corresponding to events recorded in the profile of theelectronic content item, where the score for each reference point iscomputed by correlating the event data recorded in the profile of theelectronic content item with the pagestamp of each data entry.

In accordance with further embodiments, the method may further comprisecomputing a score for each page in the electronic publication using datacorresponding to events recorded in the profile of the electronicpublication, where the score for each page is computed by correlatingthe event data recorded in the profile of the electronic publicationwith the pagestamp of each data entry. The score may provide anindication of a level of user interest in the page of the electronicpublication.

In accordance with further embodiments, an event associated with thepage of the electronic publication may be selected from the groupconsisting of: turning to the page, turning the page, commenting on thepage, indicating a like or dislike of the page, highlighting a portionof the page, annotating a portion of the page, sharing a portion of thepage, bookmarking the page, indicating a like or dislike of a comment,replying to a comment, and indicating a like or dislike to a reply to acomment.

In accordance with some embodiments, computing the score for the pagemay comprise computing a plurality of data points for the page andaggregating the plurality of data points.

In accordance with further embodiments, each data point of the pluralityof data points may be associated with a weight factor and computing thescore may comprise weighting each data point using the correspondingweight factor and aggregating the weighted data points.

In accordance with some embodiments, the data points may be selectedfrom the group consisting of: number of purchases of the electronicpublication, a number of completions of the electronic publication, anumber of times users read the electronic publication or the page,average time to read the electronic publication or the page, share rate,annotation rate, highlight rate, comment rate, comment rate compared toannotation rate, bookmark rate, like or dislike ratio; like or disliketo comment ratio, random noise range, number of users of the electronicpublication and page thereof.

In accordance with some embodiments, the method may further comprisecomputing a score for the electronic content using the data entriesrecorded in the profile of the electronic content.

In another aspect, embodiments described herein may provide a method ofdisplaying electronic content to a user the method comprising:collecting data about a plurality of user interactions with at areference point within the electronic content; calculating a scoreassociated with the reference point within electronic content using thedata, wherein the calculating step is carried out using a processor; anddisplaying a visual indicator representing the score associated with thereference point within the electronic content when the electroniccontent is displayed to a user.

In accordance with some embodiments, the electronic content may be anelectronic publication, and the user interaction may be associated witha page of the electronic publication, and the method may further involvecalculating a score for the page of the electronic publication anddisplaying a visual indicator representing the score for the page of theelectronic publication. The score may provide an indication of a levelof user interest in the page of the electronic publication.

In accordance with further embodiments, the user interaction may beselected from the group consisting of: purchasing a book, completing abook, reading a book, turning to the page, turning the page, sharing thepage, commenting on the page, indicating a like or dislike of the page,highlighting a portion of the page, annotating a portion of the page,and bookmarking the page.

In accordance with some embodiments, the calculating step may be basedon data selected from the group consisting of: number of purchases ofthe electronic publication, number of completions of the electronicpublication, number of times the electronic publication is read, numberof times the electronic publication or the page is read, average time tocomplete the electronic publication or the page, average time spentreading the electronic publication or the page when not complete yet,share rate; annotation rate, highlight rate, comment rate, comment ratecompared to annotation rate, bookmark rate, like or dislike ratio, likeor dislike to comment ratio, random noise range, and number of usersreading the electronic publication or the page.

In accordance with further embodiments, the method may further comprise:displaying on the page a link to an interface for collecting datadefining whether the users like or dislike the page; using theinterface, collecting data defining whether the users like or dislikethe page; computing a like or dislike reading score for the page basedon the data defining whether the users like or dislike the page; anddisplaying a visual representation of the like or dislike reading score.

In accordance with some embodiments, the method may further comprise:displaying on the page a link to an interface for collecting commentsabout the page from the users; using the interface, collecting commentdata about the page from the users; computing a comment score for thepage based on the comment data; and displaying a visual representationof the comment score and at least a portion of the collected comments.

In accordance with further embodiments, the method may further comprise:collecting statistical data about the user interaction with theelectronic content item; calculating a score associated with theelectronic content item using the statistical data, wherein the scorerepresents a level of user interest in the electronic content item;displaying a visual representation of the score associated with theelectronic content item.

In accordance with some embodiments, the method may further comprisecomputing a score for each reference point within the electronic contentitem using the collected data.

In accordance with some embodiments, the method may further comprisedisplaying a visual indicator representing the calculated score for eachreference point within the electronic content item.

In a further aspect, embodiments described herein may provide a methodof managing a network of users and electronic publications comprising:storing a plurality of profiles for a plurality of users, wherein eachuser profile is associated with a user of at least one device configuredto access at least one electronic publication in a memory, wherein eachuser profile comprises a user identifier identifying the user; storing aplurality of profiles for a plurality of electronic publications,wherein each electronic publication comprises a plurality of pages; if auser interaction with a page of one of the plurality of electronicpublications meets an event definition, identifying the user interactionas an event associated with the page of the electronic publication,wherein the identifying step is carried out using a processor;collecting data corresponding to the event associated with the page ofthe electronic publication, wherein the data comprises a pagestamp andthe user identifier, wherein the pagestamp indicates the page in theelectronic publication, and wherein the user identifier indicates theuser associated with the user interaction; and recording at least aportion of the data corresponding to the event as a data entry in theprofile of the electronic publication, wherein the data entry comprisesthe pagestamp and the user identifier.

In accordance with further embodiments, the method may further comprisestoring a plurality of event definitions. The method may involveidentifying the user interaction as an event comprises matching inputdata to at least one of the plurality of event definitions.

In accordance with some embodiments, the method may further compriseproviding a notification of an occurrence of the event to a socialnetwork application.

In accordance with further embodiments, receiving data associated withthe event further comprises receiving a time period associated withreading the electronic publication.

In accordance with some embodiments, receiving data associated with theevent further comprises receiving content from the at least oneelectronic publication.

In accordance with some embodiments, receiving data associated with theevent further comprises receiving a location of the at least one deviceconfigured to access the at least one electronic publication.

In accordance with further embodiments, the event is associated with atleast one of the group consisting of: commenting on the page, annotatingthe page, indicating a like or dislike about the page, turning a numberof pages in the electronic publication, adding the electronicpublication to an electronic library, finishing the electronicpublications, reading the electronic publication in a location, andreading about a character on the page.

In another aspect, embodiments described herein may provide a system formanaging profiles for electronic content, the system comprising: aprofile module configured to: store a plurality of profiles for aplurality of electronic content items in a memory, wherein each profilecomprises an electronic content identifier associated with thecorresponding electronic content item; an event detection moduleconfigured to identify, using a processor, a user interaction with areference point within the electronic content item as an event if theuser interaction meets at least one event definition, and to receivedata associated with the event, wherein the data includes a pagestampindicating the reference point within the electronic content; andwherein the profile module is further configured to record at least aportion of the data associated with the event in the profile of theelectronic content item.

In accordance with some embodiments, the electronic content item may bean electronic publication, the user interaction may be with a page ofthe electronic publication, and the pagestamp may indicate the pagewithin the electronic publication.

In accordance with further embodiments, the system may further comprise:an event definition module configured to define a plurality of eventdefinitions; and a rules engine configured to store and manage theplurality of event definitions.

In accordance with some embodiments, the event detection module may beconfigured to identify an event by interacting with the rules engine tomatch input data to the at least one event definition.

In accordance with some embodiments, the system may further comprise ananalytics engine configured to process data associated with events tocompute the scores for each page in the electronic publication bycorrelating the data associated with the events based on the pagestamp.

In a further aspect, embodiments described herein may provide a methodof managing profiles for electronic publications comprising: storing aplurality of profiles for a plurality of electronic publications,wherein each profile corresponds to an electronic publication selectedfrom the plurality of electronic publications; detecting on a device auser interaction with a page of an electronic publication of theplurality of electronic publications; if the user interaction with thepage of the electronic publication meets an event definition,identifying the user interaction as an event associated with the page ofthe electronic publication, wherein the identifying step is carried outusing a processor; collecting data corresponding to the event, whereinthe data comprises a pagestamp, wherein each pagestamp indicates thepage within the electronic publication; recording at least a portion ofthe data corresponding to the event as a data entry in the profilecorresponding to the electronic publication, wherein the data entrycomprises the pagestamp; computing a score for each page in theelectronic publication using data corresponding to events recorded inthe profile of the electronic publication, wherein the score for eachreference point is computed by correlating the event data recorded inthe profile of the electronic content item with the pagestamp of eachdata entry, wherein the score provides an indication of a level of userinterest in the page of the electronic publication, and displaying avisual indicator representing the score for each page of the electronicpublication when the page of the electronic publication is displayed onthe device.

In another aspect, embodiments described herein may provide a system ofmanaging profiles for electronic publications comprising: a profilemodule configured to store a plurality of profiles for a plurality ofelectronic publications, wherein each profile corresponds to anelectronic publication selected from the plurality of electronicpublications; an event detection module configured to: detect on adevice a user interaction with a page of an electronic publication ofthe plurality of electronic publications; if the user interaction withthe page of the electronic publication meets an event definition, use aprocessor to identify the user interaction as an event associated withthe page of the electronic publication; collect data corresponding tothe event, wherein the data comprises a pagestamp, wherein eachpagestamp indicates the page within the electronic publication; and anevent analytics engine configured to use the processor to compute ascore for each page in the electronic publication using datacorresponding to events recorded in the profile of the electronicpublication, wherein the score for each reference point is computed bycorrelating the event data recorded in the profile of the electroniccontent item with the pagestamp of each data entry, wherein the scoreprovides an indication of a level of user interest in the page of theelectronic publication; wherein the profile module is further configuredto: record at least a portion of the data corresponding to the event asa data entry in the profile corresponding to the electronic publication,wherein the data entry comprises the pagestamp; and display a visualindicator representing the score for each page of the electronicpublication when the page of the electronic publication is displayed onthe device.

BRIEF DESCRIPTION OF THE DRAWINGS

For a better understanding of embodiments of the systems and methodsdescribed herein, and to show more clearly how they may be carried intoeffect, reference will be made, by way of example, to the accompanyingdrawings in which:

FIG. 1 is a block diagram of components interacting with a system formanaging profiles of electronic publications in accordance with anexample embodiment;

FIG. 2 is a block diagram of the system for managing profiles ofelectronic publications in accordance with at least one embodiment;

FIG. 3 is a flowchart of a method for managing profiles of electronicpublications in accordance with at least one embodiment;

FIG. 4 is a screen display of rendered data to provide a visual displayof data from a profile of electronic publications in accordance with atleast one embodiment;

FIG. 5 is another screen display of rendered data to provide a visualdisplay of data from a profile of electronic publications in accordancewith at least one embodiment; and

FIG. 6 is a further screen display of a rendered data to provide avisual display of data from a profile of electronic publications inaccordance with at least one embodiment.

The drawings, described below, are provided for purposes ofillustration, and not of limitation, of the aspects and features ofvarious examples of embodiments described herein. The drawings are notintended to limit the scope of the teachings in any way. For simplicityand clarity of illustration, elements shown in the figures have notnecessarily been drawn to scale. The dimensions of some of the elementsmay be exaggerated relative to other elements for clarity. Further,where considered appropriate, reference numerals may be repeated amongthe figures to indicate corresponding or analogous elements.

DETAILED DESCRIPTION

It will be appreciated that numerous specific details are set forth inorder to provide a thorough understanding of the exemplary embodimentsdescribed herein. However, it will be understood by those of ordinaryskill in the art that the embodiments described herein may be practicedwithout these specific details. In other instances, well-known methods,procedures and components have not been described in detail so as not toobscure the embodiments described herein. Furthermore, this descriptionis not to be considered as limiting the scope of the embodimentsdescribed herein in any way, but rather as merely describingimplementation of the various embodiments described herein.

The embodiments of the systems and methods described herein may beimplemented in hardware or software, or a combination of both. However,these embodiments may be implemented in computer programs executing onprogrammable computers, each computer including at least one processor,a data storage system (including volatile and non-volatile memory and/orstorage elements), and at least one communication interface. Forexample, the programmable computers may be a server, network appliance,set-top box, embedded device, computer expansion module, personalcomputer, laptop, personal data assistant, or mobile device. Programcode is applied to input data to perform the functions described hereinand to generate output information. The output information is applied toone or more output devices, in known fashion. In some embodiments, thecommunication interface may be a network communication interface. Inembodiments in which elements of the invention are combined, thecommunication interface may be a software communication interface, suchas those for inter-process communication (IPC). In still otherembodiments, there may be a combination of communication interfaces.

Each program may be implemented in a high level procedural or objectoriented programming or scripting language, or both, to communicate witha computer system. However, alternatively the programs may beimplemented in assembly or machine language, if desired. In any case,the language may be a compiled or interpreted language. Each suchcomputer program may be stored on a storage media or a device (e.g. ROMor magnetic diskette), readable by a general or special purposeprogrammable computer, for configuring and operating the computer whenthe storage media or device is read by the computer to perform theprocedures described herein. Embodiments of the system may also beconsidered to be implemented as a non-transitory computer-readablestorage medium, configured with a computer program, where the storagemedium so configured causes a computer to operate in a specific andpredefined manner to perform the functions described herein.

Furthermore, the system, processes and methods of the describedembodiments are capable of being distributed in a computer programproduct including a physical non-transitory computer readable mediumthat bears computer usable instructions for one or more processors. Themedium may be provided in various forms, including one or morediskettes, compact disks, tapes, chips, magnetic and electronic storagemedia, and the like. The computer useable instructions may also be invarious forms, including compiled and non-compiled code.

As an illustrative example, the systems and methods described herein maymanage profiles of electronic publications. However, those skilled inthe art will understand that the described embodiments may also be usedto manage profiles of other types of electronic content, such as movies,television shows, music albums or songs. An instance of electroniccontent may be referred to herein as an electronic content item. When auser interacts with an electronic content item the interaction may beassociated with a reference point within the user interaction. Forexample, if the electronic content item is an electronic publication thereference point may be a page within the electronic publication. Asanother example, if the electronic content item is a movie the referencepoint may be a frame within the movie. As a further example, if theelectronic content item is a song the reference point may be a point oftime within the song. As another example, if the electronic content itemis a television show then the reference point may be a point of timewithin the television show. These are examples and there may be otherreference points and types of electronic content.

Reference is now made to FIG. 1, which illustrates a block diagram ofcomponents interacting with a system 100 for managing profiles ofelectronic content in accordance with an example embodiment. System 100maintains a record of metrics, data points, scores, and events bycollecting and processing input data received from a server 104, atleast one device 102 a, 102 b, 102 c, electronic content (such as forexample, one or more electronic publications or “e-books” 108, 110, 114,116), computer applications, such as social networking applications 120,or a combination thereof. Input data received from the user'sinteractions with one or more electronic publications may be referred toas user interactions or activities, and may be recorded by system 100 inprofiles associated with electronic publications as data entries.Certain user interactions may be identified by system 100 as metrics orevents, and the identification of metrics and events is described indetail below. The system 100 identifies certain user interactions asmetrics or events and compiles received data associated with the metricsor events. The system 100 analyzes the data associated with metrics,events, or a combination thereof, to compute a score for each page in anelectronic publication and for the electronic publication as a whole,and to compute other statistical data. Data from metrics, events,statistical analysis, and scores may be collected, analyzed, and storedby system 100 to form part of a detailed profile for an electronicpublication. An electronic publication may be read by multiple users onmultiple devices 102 a, 102 b, 102 c and system 100 may collatecollected metrics and data associated with events across all users anddevices for the electronic publication profile. The scores may providean indication of a level of user interest in a page of the electronicpublication or in the whole electronic publication. System 100 isoperable to use the scores to rank or recommend electronic publications.System 100 is operable to create social network or graph of electronicpublications by linking profiles of electronic publications through userinteractions with the electronic publications.

As used herein, the terms metrics, events and notifications are definedas follows:

“Metrics” are defined as user interactions that are recorded by system100. User interactions may be any interaction a user has with server104, device 102 a, 102 b, 102 c, electronic publications 108, 110, 114,116, social network applications 120, or a combination thereof. Metricsmay be either direct user interactions with an electronic publication,such as for example a page turn, or indirect user interactions, such asfor example reading at a specific time. Metrics include userinteractions with the electronic publication, such as turning a page,and may also include data elements, such as the location of the user ordevice 102 a, 102 b, 102 c, electronic publication title, timestamp,pagestamp, type of electronic publication, genre of electronicpublication, author of the electronic publication, reading rate, and soon. Metrics may be viewed as a subset of user interactions, as not alluser interactions may be recorded as metrics by system 100.

“Events” are a predefined subset of metrics. Specifically, events may bethose user interactions with an electronic publication that are recordedas part of the profile for the electronic publication and used by system100 to generate a score for the electronic publication and pagesthereof. The score may provide an indication of a level of user interestin a page of the electronic publication or the electronic publication asa whole. For example, an event may be a user comment on a page of anelectronic publication. Additionally, events may contain resource dataof images, audio, video, pagestamp, timestamp, and text which are usedin the creation of notifications and visual representations of the scoreand other data entries of the profile of the electronic publication. Anevent may include a predicate or condition which operates on the set (ora subset) of metrics and events recorded by the system 100 to determinewhether the event has been achieved by the user. A pagestamp may referto a reference point within the electronic content such as a page withinan electronic publication, a frame within a movie, a point of timewithin a song, a point of time within a television show, and so on.

“Notifications” are communications provided to the user via a userinterface to inform the user that a particular event has occurred.Notifications may include the resource data (such as for example imagesand text) associated with the corresponding event to inform the userthat the particular event or achievement that has taken place.Notifications may also include a communication of the score associatedwith an electronic publication, user comments about the electronicpublication, and so on. Notifications may include an advertisement oroffer sponsored by an advertiser. As will be explained herein, system100 can process data associated with metrics and events to identify anadvertisement or offer based on the profile of the electronicpublication. System 100 may determine a suitable advertisement byanalyzing the content of electronic publication captured as metrics andevents by system 100. Notifications may also be provided to users as avisual representation of captured metrics and events. For example, avisual representation of the score or all comments made by users on aparticular page of an electronic publication may be provided to userswhen that particular page is displayed.

As an illustrative example, system 100 may record data associated withuser interactions with a particular electronic publication made bymultiple users. System 100 is operable to display pages of theelectronic publication via a user interface along with variousmechanisms for collecting data regarding user interactions. For example,system 100 is operable to provide a mechanism (e.g. a link to aninterface) for a user to like or dislike a page of an electronicpublication, a mechanism (e.g. a link to an interface) for user tocomment on the page of electronic publication, a mechanism (e.g. a linkto an interface) for user to share the page or portion thereof withother users, and a mechanism for a user to highlight a portion of thepage. System 100 is operable to record these specific types of userinteractions as event definitions. When the system 100 detects one ofthese types of user interactions with the particular electronicpublication then the system 100 is operable to identify that particularuser interaction as an event, receive data corresponding to the event,including a pagestamp indicating the page of the electronic publication,timestamp, and so on. A pagestamp may refer to a reference point withinthe electronic content such as a page within an electronic publication,a frame within a movie, a point of time within a song, a point of timewithin a television show, and so on. System 100 records datacorresponding to the event in the profile of the electronic publication.System 100 is operable to record user interactions with a particularelectronic publication made by multiple users in the profile of theelectronic publication. System 100 is operable to use the data recordedin the electronic publication in order to compute a score for each pageof the electronic publication and for the electronic publication of thewhole. The score may provide an indication of a level of user interestin a page of the electronic publication or the electronic publication asa whole. The score may be used to rank or recommend electronicpublications or pages thereof. When a page of the particular electronicpublication is displayed to a subsequent user, the system 100 isoperable to provide a notification to the user about the score of thepage and data recorded as part of the profile of the electronicpublication, such as the number of comments on the page made by usersand a comment feed displaying the content of the comments. System 100may enable users to connect through an electronic publication, such as,for example, when multiple users are reading the same electronicpublication. Users can interact with the electronic publication, whichinteractions may be visible by the other users. Users can communicatewith each other about the electronic publication through, for example,comments and replies to comments about the electronic publication or apage thereof. A user may also interact with other user interactions,both of which will be referred to as user interactions. For example, auser can like or dislike another user's comment on a page of anelectronic publication.

Referring back to FIG. 1, system 100 may include a server 104 whichincludes a memory store, such as database(s) or file system(s). Althoughonly one server 104 is shown for clarity, there may be multiple servers104 or groups of servers 104 distributed over a wide geographic area andconnected via network 106, for example. Server 104 has a networkinterface for connecting to network 106 in order to communicate withother components, to serve web pages, and execute other computingapplications.

Continuing to refer to FIG. 1, server 104 may connect to one or moredevices 102 a, 102 b, 102 c via network 106. Although only three devices102 a, 102 b, 102 c have been illustrated, any suitable number ofdevices may connect to the server 104. Server 104 may provide aneReading service 106 to devices 102 a, 102 b, 102 c, such as providingaccess to a catalogue of electronic publications, for example. TheeReading services 106 may also include providing a social networkapplication connecting profiles of users and electronic publicationsthrough user interactions captured and recorded in profiles. The socialnetwork application may be an online service, platform, or site thatbuilds electronic social networks and social relationship links betweenprofiles of electronic publications and users, which may be viewed asnodes in the social network. A social network application may representeach electronic publication and user as an electronic profile, andconstruct a social network for users by creating electronic links toelectronic publication profiles, other user profiles and pages. Theserver 104 may include a web server to receive and respond to requestsreceived from devices 102 a, 102 b, 102 c.

Device 102 a, 102 b, 102 c may be any networked computing deviceincluding a processor and memory, such as an electronic reading device,a personal computer, workstation, server, portable computer, mobiledevice, personal digital assistant, laptop, smart phone, WAP phone, aninteractive television, video display terminals, gaming consoles, andportable electronic devices or a combination of these. Device 102 a, 102b, 102 c may include a microprocessor that may be any type of processor,such as, for example, any type of general-purpose microprocessor ormicrocontroller, a digital signal processing (DSP) processor, anapplication-specific integrated circuit (ASIC), a programmable read-onlymemory (PROM), or any combination thereof. Device 102 a, 102 b, 102 cmay include any type of computer memory that is located eitherinternally or externally to the device 102 a, 102 b, 102 c such as, forexample, random-access memory (RAM), read-only memory (ROM), compactdisc read-only memory (CDROM), electro-optical memory, magneto-opticalmemory, erasable programmable read-only memory (EPROM), andelectrically-erasable programmable read-only memory (EEPROM), or thelike. Device 102 a, 102 b, 102 c may include one or more input devices,such as a keyboard, mouse, camera, touch screen and a microphone, andmay also includes one or more output devices such as a display screenand a speaker. Device 102 a, 102 b, 102 c has a network interface forconnecting to network 106 in order to communicate with other components.The illustrated device 102 a, 102 b, 102 c may be different types ofdevices.

In accordance with some embodiments, device 102 a may be an electronicreading device designed specifically for reading electronicpublications, such as a Kobo™ eReader. Device 102 a need not bespecifically designed for reading electronic books and may be a generalpurpose computer, a laptop computer, a tablet computer, a personaldigital assistant (PDA), a mobile device, a smart phone, an interactivetelevision, video display terminals, gaming consoles, and portableelectronic devices, and so on. Device 102 a may store electronicpublications 110 locally or may access electronic publications 108residing on server 104 for display to user. In accordance withalternative embodiments, device 102 a may be any computing device with aprocessor and memory configured for other types of electronic content,such as movies, television shows, music albums or songs.

In accordance with some embodiments, device 102 b may be an electronicreading device that directly connects, via a serial bus for example, toanother device 102 c, such as a personal computer in order to connect tonetwork 106 and server 104. Devices 102 b, 102 c may be a generalpurpose computer, a laptop computer, a tablet computer, a personaldigital assistant (PDA), a mobile device, a smart phone, an interactivetelevision, video display terminals, gaming consoles, and portableelectronic devices, or a combination thereof. Device 102 b may storeelectronic publications 114 locally, or may access electronicpublications 116 residing on another device 102 c, or may accesselectronic publications 108 residing on server 104 for display to user.

As used herein, electronic publications 108, 110, 114, 116 may includeany text, audio, image, video, or combination thereof, in electronicform that is capable of being displayed to a user on device 102 a, 102b, 102 c, including without limitation electronic books, newspapers,magazines, and other publications.

According to exemplary embodiments, the devices 102 a, 102 b, 102 ccapable of storing and executing an electronic reading (“eReading”)application 112. The eReading application 112 may communicate witheReading Service 106 residing on the server 104 to allow a useroperating a device 102 a, 102 b, 102 c to access reading services hostedby the server 104.

Network 106 may be any network(s) capable of carrying data including theInternet, Ethernet, plain old telephone service (POTS) line, publicswitch telephone network (PSTN), integrated services digital network(ISDN), digital subscriber line (DSL), coaxial cable, fiber optics,satellite, mobile, wireless (e.g. Wi-Fi, WiMAX), SS7 signaling network,fixed line, local area network, wide area network, and others, includingany combination of these.

System 100 may also include third-party network applications 120 whichmay be an online service, platform, or site that builds electronicsocial networks and social relationship links between people (includingusers of the system 100), which may be viewed as nodes in the network.Third-party network applications 120 may represent each user as anelectronic profile, and construct a social network for the user bycreating electronic links to other user profiles and pages. Examples ofthird-party network applications 120 include Facebook™ Linkedln™,MySpace™, FourSquare™ and Twitter™.

Reference is now made to FIG. 2, in which an exemplary embodiment of thesystem 100 of FIG. 1 is illustrated. In the exemplary embodiment shownin FIG. 2, only device 102 a is illustrated together with the server104, and the network 106. For clarity, e-books 110 and 108 are omittedfrom the illustration of device 102 a and server 104, respectively, inFIG. 2.

Server 104 and device 102 a are configured to access and record metrics,identify events and compute scores for pages of an electronicpublications 108, 110, 114, 116 and the whole electronic publication,based on user interactions with the electronic publication 108, 110,114, 116 (shown in FIG. 1) accessible to server 104, device 102 a, orboth. Server 104 records data associated with metrics and events in aprofile of an electronic publication (illustrated in FIGS. 4, 5, 6) andanalyzes the data associated with metrics and events to compute scoresfor pages of the electronic publication as well as a score for theelectronic publication as a whole. For example, device 102 a may includea global positioning system and provide its geographic location (and inturn the geographic location of the user) to server 104. A user readingthe electronic publication on the device may indicate that they like aparticular page in electronic publication and provide a comment on thepage using the provided mechanisms. System is operable to record thegeographic location, the like indication and the comment in the profileof electronic publication along with the pagestamp indicating the page.

In this exemplary embodiment, device 102 a is configured with eReadingapplication 112 that includes reading module 212, library 210, clientevent detection module 202, client electronic publication profile 204(which is an example of an electronic publication profile), and clientsocial connector 205. The reading module 212 allows a user to accesselectronic publications 108, 110, 114, 116 (FIG. 1) that are stored onthe device 102 a in a library 210, or on server 104 in a digitalwarehouse 412. The reading module 212 is able to provide a user withoptions for viewing, managing, manipulating and reading electronicpublications 108, 110, 114, 116. The reading module 212 is furtheroperable to display the score computed for each page in the electronicpublication based on the data in the profile for the electronicpublication. The reading module 212 is further operable to providemechanisms for indicating a like/dislike of a page (or for the entireelectronic publication), for providing a comment, for highlighting aportion of the page, for sharing the page, or annotating a portion ofthe page, and otherwise marking-up pages of the electronic publication,and so on. Others options may include for example searching the contentsof the library 210 or digital warehouse 412 for a desired electronicpublications, listing available electronic publications, selecting anelectronic publication, reading an electronic publication bysequentially viewing pages of the electronic publications, and viewingother users' comments, highlights, annotations and so on.

Client event detection module 202 is operable to monitor userinteraction received as input data when a user interacts with anelectronic publication using the reading module 212, library 210, thedevice 102 a, social network application, or a third-party networkapplication 120, such as Facebook™ or Twitter™. Client event detectionmodule 202 may record predefined user interactions with the electronicpublication in the profile of the electronic publication as metrics.Further, client event detection module 202 is operable to monitor userinteractions with the electronic publication to identify events. In anexemplary embodiment user interactions performed on the device 102 a mayinclude, for example, turning a page, completing a chapter, completingan electronic publication, completing a series/collection of electronicpublications and completing a predetermined number of pages, chapters,and electronic publications. In addition, user interactions may includeindicating a like/dislike of a page of electronic publication, making acomment on a page, annotating a portion of the page, and so on. Clientevent detection module 202 may record these example user activities inthe electronic publication profile as metrics. Client event detectionmodule 202 is operable to determine whether any recorded metrics may beidentified as events, and recorded in the electronic publication profileas events. Client event detection module 202 is configured to interactwith server event detection module 402, which is another instance ofthis module that resides on the server 104. Client event detectionmodule 202 is further configured to interact with event definitionmodule 401 in order to identify events if a user's interaction meets anevent definition stored and managed thereby.

As an example, a user may be reading the electronic publication “Alicein Wonderland” and client event detection module 202 may identify andstore the electronic publication title and an associated reading time asa metric. When the user turns to a page in the electronic publicationwhich describes Alice meeting the Cheshire cat for the first time in thee-book, then client event detection module 202 may record this virtualmeeting as a metric and may identify this virtual meeting. The user maythen indicate that they “like” the page and comment on the page. Thisdata will be recorded in the profile of the electronic publication alongwith the pagestamp indicating the page. As another example, when theuser turns a page in the electronic publication that describes Alicearriving at a place, such as the rabbit hole, for the first time, thenclient event detection module 202 may record this virtual arrival at aplace as a metric and may identify this virtual arrival as an event. Theuser may indicate that they “dislike” this page and system will recordthis data as part of the profile for the electronic publication alongwith the pagestamp.

In the exemplary embodiment illustrated in FIG. 2, server 104 isconfigured with an eReading service 106 that includes a digitalwarehouse 412 for cataloguing, storing and making available copies ofelectronic publications (not shown), a digital store 410 for processingelectronic publication purchases, a server event detection module 402,event definition module 401, server reading profiles 404, and a serversocial connector 405.

Event definition module 401 generates and stores event and definitionsfor use by server event detection module 402 and client event detectionmodule 202 to identify events when monitoring user interactions. Eventdefinition module 401 may further include metric definitions todetermine when a specific user interaction should be recorded by thesystem 100 as a metric. An example of a metric is a user turning a pagein an electronic publication. An example of an event includes a usercommenting on a page in an electronic publication. Event definitionmodule 401 generates and stores definitions for contextual informationfor user interactions that also may be identified and captured by system100 as metrics, or events, such as for example a user turning apre-defined number of pages in a specific electronic publication, suchas Pride and Prejudice by Jane Austen. Metrics and events may be basedon one or more of the following dimensions: activity based (e.g. addinga new e-book to the user's library 210); time based (e.g. readingbetween midnight and 3 am); content based (e.g. finished the last bookof the Twilight series); and location based (e.g. reading on a beach inMexico). Event definition module 401 may further be operable to generateand store definitions associated with advertisements. Server 104 processmetrics and data associated with events using these definitionsassociated with advertisements to determine when a particularadvertisement should be displayed to a user and how the particularadvertisement should be displayed to a user.

Server event detection module 402 is similar to client event detectionmodule 202 except that it resides on server 104 and monitors userinteractions with an electronic publication associated with the server104, such as for example searching for and purchasing a specificelectronic publication. Server event detection module 402 monitors userinteractions with electronic publications to identify metrics or eventsif a user interaction meets a metric or an event definition, as definedin and managed by event definition module 401. Server event detectionmodule 402 may also be configured to identify metrics or eventsoccurring at device 102 a by interacting with the client event detectionmodule 202 residing on device 102 a. Server event detection module 402may detect events based on user interactions with a digital warehouse412 and store 410 resident on the server 104. Server event detectionmodule 402 also detects events through user interactions on the socialnetwork application and third-party network applications 120. Serverevent detection module 402 may detect user interactions and metricsassociated with the same electronic publication made by multiple usersacross multiple devices 102 a, 102 b, 102 c and is operable to receivedata associated with multiple users and with multiple devices 102 a, 102b, 102 c, and record such user interactions as metrics in the profile ofthe electronic publication and identify events associated with such userinteractions even though they occur by multiple users and on multipledevices 102 a, 102 b, 102 c. Server event detection module 402 willcollate these metrics to compute scores for pages of the electronicpublication and for electronic publication as a whole.

When server event detection module 402 records a metric or identifies anevent, event detection module 402 provides data associated with themetric or the event (e.g. time, date, title of e-book, activitydescription, contents, pagestamp, and so on) to analytics engine 403.Analytics engine 403 includes a rules engine with event definitionsconfigured as rules in order to analyze patterns of metrics and events,compute scores for pages of electronic publication and for the wholeelectronic publication, compute statistical data for the profile, andconstruct a profile for the electronic publication. Analytics engine 403performs pattern matching of input data to metric and eventsdefinitions, and definitions associated with advertisements stored inthe event definition module 401. As noted herein, system 100 may storepredetermined definitions which describe rules for when certainactivities qualify as a metric, an event, an advertisement to beprovided, or a combination thereof. The analytics engine 403 then usesthe definitions in the event definition module 401 to computestatistical data about a metric, an event, a group of metrics or a groupof events, compute scores for pages of the electronic publication, otherstatistical data for the profile, or determine if an advertisementshould be provided to a user. The output of the analytics engine 403 maythen be communicated to server electronic publication profile 404 on theserver 104, a client electronic publication profile 204 on the device102 a, or both. As will be described in detailed herein, analyticsengine 403 is operable to compute scores for pages of electronicpublications and for the publication as a whole using data in theprofile of the electronic publication. The analytics engine 403 mayweight data used to compute the score and may also normalize theweighted data prior to aggregating the data in order to compute thescore. In some embodiments, server 104 may include a separateadvertisement analytics engine (not shown) configured with rules foradvertisements definitions. Advertisement analytics engine, instead ofor in addition to analytics engine 403, may determine whether anadvertisement, recommendation or offer should be provided to a userbased on recorded metrics, events, user interactions, scores and so on.

Illustrative examples of profiles are electronic publication profiles204, 404 which are configured to store and to render data from theprofile of electronic publications to provide a visual representationfor display on at least one device 102 a, 102 b, 102 c. The serverelectronic publication profile 404 may include multiple profiles formultiple electronic publications and the client electronic publicationprofile 204 may include copies of the profile of electronic publicationsresiding on the device 102 a. Server electronic publication profile 404and client electronic publication profile 204 contain an electronicpublication identifier, a log of identified metrics and eventsassociated with the electronic publication, notifications, computedscore, computed statistical data, and other information associated withthe electronic publication. The content of the electronic publicationprofile 204 maintained on device 102 a and the electronic publicationprofile maintained in electronic publication profiles 404 stored on theserver 104 may be synchronized periodically or in real time.

In certain embodiments, a server social connector module 405 is residenton the server 104 and a client social connector module 205 is residenton the device 102 a. Social connectors 205, 405 are configured to share,publish, and broadcast contents of electronic publication profile 404,204 to social network application and third-party network applications120, and receive user activity data from social network applications 120in order to detect metrics and events. For example, social connectors205, 405 are configured to share, publish, broadcast metrics, events,scores, offers, and advertisements to social network applications 120.In certain embodiments, elements from the electronic publication profile404, 204 are communicated via the network 106 to third-party networkapplications 120, including for example social networking sites such asFacebook™, Linkedln™, Foursquare™ and Twitter™.

Event detection modules 202, 402, and event definition module 401 may beconfigured to define and detect content-based metrics, events andadvertisements that the user can interact with. For example, eventdefinition module 401 may compute data by searching content fromelectronic publications regarding characters and locations in theelectronic publication. The user may interact with these generatedcontent based metrics, events and advertisements. In response to suchinteraction, event detection modules 202, 402 may identify an event. Forexample, the first time a particular character is described or referredto in a page in the electronic publication, event detection modules 202,402 may display an indication that a user is meeting this character fromthe electronic publication for the first time and identify this virtualmeeting as an event. The algorithm used to obtain data for thecontent-based events may include: manual selection, keyword searching,crowd sourcing, and import of third party datasets. For example, when anew character is introduced on a page of an electronic publication,event detection module 202, 402, may detect the occurrence of an eventin response to receiving a request to create an event from the user. Forexample, the request may be initiated by highlighting and clicking onthe name of the character. System 100 may record the occurrence of a newevent. In some alternative embodiments, system 100 may propagate thisdetection to all other event detection modules 202, 402, correspondingto other users that have the same electronic publication stored in theirlibrary 210. When that page is displayed to another user, eventdetection modules 202, 402 may identify the virtual meeting of thecharacter as an event. The user may override this configuration and notdetect an event based on another user's event creation. In someembodiments, before a newly created event is propagated to other eventdetection modules 202, 402, it may be verified by system 100 or otherreviewers.

In some embodiments, system 100 may process an electronic publication tocreate event markers or advertisement markers so that when a specificpage of the e-book is displayed, event detection modules 202, 402 willdetect the occurrence of an event or display an advertisement. Forexample, system 100 may search for key words, such as a location, andflag the first occurrence of a location as an event. For example, thefirst time encountering a new location in the electronic publication maybe flagged as an event. System 100 may also display an advertisement oroffer associated with the location, such as for example a discount onair fare. System 100 may also detect an event when an act occurs withina plot of an electronic publication, such as the death of a character.System 100 may process some or all of the electronic publication indigital warehouse to create event markers or advertisement markersbefore a copy of the electronic publication is available to users viastore 410.

Reference is now made to FIG. 3, which illustrates a method 300 formanaging profiles for electronic publications in accordance with atleast one embodiment. The method 300 for managing profiles forelectronic publications enables system 100 to collect data about userinteractions with the electronic publication, record the collected datain a profile and process the collected information to compute a scorefor the whole electronic publication and pages thereof, and otherstatistical data and results about the electronic publication. System100 may be operable to create a social network based on the profiles ofthe electronic publications.

At step 302, system 100 stores profiles for electronic publications 108,110, 114, 116. A profile provides a data structure for recordingcollected data about the electronic publication. The profile may includean electronic publication identifier identifying the electronicpublication associated with the profile in order to provide a linkbetween the profile and the electronic publication. System 100 mayreceive the electronic publication identifier from server 104 or via adevice 102 a, 102 b, 102 c. System 100 may store the profiles in theclient electronic publication profile 204, server electronic publicationprofile 404, or both. The electronic publication profile includes theelectronic publication identifier to enable the system 100 to identifyand retrieve the electronic publication profile associated with aparticular electronic publication in order to record metrics, events,notifications, scores, and other data associated with electronicpublication and pages thereof. The electronic publication profile isused to render data to provide a visual display of an electronicpublication profile for display to user and provision to otherapplications.

At step 304, system 100 monitors for input data associated with userinteractions with an electronic publication in order to identify metricsand events, and collect data about the electronic publication to computea score for the electronic publication and pages thereof. System 100 maymonitor user interactions that are received as input data when a userinteracts with an electronic publication using the reading module 212,library 210, the device 102 a, 102 b, 102 c, social network application,or a third-party network application 120, such as Facebook™ andTwitter™. User interactions may also occur on the server 104 such as auser searching electronic publications in digital warehouse 412 orpurchasing electronic publications from store 410. Multiple users mayalso interact with the same electronic publication and datacorresponding to the user interactions with the electronic publicationby the multiple users may be recorded in the profile. All userinteractions may be associated with that particular electronicpublication regardless of whether they carried out by different users,or occur on the device 102 a, 102 b, 102 c, server 104, social networkapplication, or a third-party network application 120. System 100 mayreceive input data via a keyboard, touch screen, buttons, voicecommands, and so on. System 100 may maintain an activity log of all userinteractions by recording metrics associated with user interactions,even if not identified as an event. As noted herein, user interactionsmay be received from the device 102 a or the server 104, such as byscrolling through pages or purchasing an e-book from the store 410. If auser interaction is detected on a device 102 a, 102 b, 102 c then anotice of the user interaction may be transmitted to the server 104.

At step 306, system 100 determines whether the user interaction with theelectronic publication qualifies as a metric. System 100 uses serverevent detection module 402 and client event detection module 202 todetermine whether the user activity associated with either the server104 and devices 102 a, 102 b, 102 c, social network application orthird-party network application 120, should be identified as a metricand recorded in the profile of the electronic publication. An example ofa metric is turning a page in a particular electronic publication. Eventdetection module 202, 402 may interact with event definition module 401to identify a user interaction as a metric using metric definitionsmaintained and stored thereby. A metric is a subset of userinteractions, as not all user interactions will be recorded by system100 as a metric in the profile of the electronic publication. Metricsmay be based on one or more of the following dimensions: activity based(e.g. adding the electronic publication to a user's library 210); timebased (e.g. reading the electronic publication between midnight and 3am); content based (e.g. finished the last page of the electronicpublication); and location based (e.g. reading the electronicpublication on a beach in Mexico, virtually arriving at a location inthe electronic publication). A metric may be based on user interactionswith the electronic publication, interactions with other users(conversations, chat sessions), and activities on social networkapplications 120 in relation to the electronic publication. For example,metrics will record when a user shares data about electronic publicationwith other users, what the data is, and who the other users are, torecord a form of social graph for the electronic publication.

When event detection modules 202, 402 identify a user interaction as ametric, then at step 308, system 100 receives data associated with themetric and, at step 310, records the received data as a metric in theprofile of the electronic publication. If a user interaction is specificto a page of the electronic publication then the data received andrecorded by system 100 includes a pagestamp indicating the page in theelectronic publication. The pagestamp provides a link between the pagein the electronic publication and the data recorded in the profile. Ifthe user interaction does not qualify as a metric, the method 300returns to step 304 and system continues to monitor user interactionswith the electronic publication to identify metrics and events.

At step 312, system 100 determines whether the user interaction ormetric qualifies as an event. For example, an event may be a comment ona page of the electronic publication, an annotation on a page of theelectronic publication, an endnote or review of the electronicpublication, a like/dislike of a page of the electronic publication, ashare of a page, and so on. System 100 uses server event detectionmodule 402 and client event detection module 202 to determine whetherthe user interaction associated with the electronic publication shouldbe identified as an event and recorded in the profile of the electronicpublication. Not all metrics (which are in turn a subset of userinteractions) may be identified as events. Events may be a subset ofmetrics. For example, a metric may be turning 1 page in the electronicpublication, and an event may be turning all pages of the electronicpublication. System 100 will identify and record each individual pageturn as metrics to in turn identify the event, turning the last page inthe electronic publication. Event detection module 202, 402 may interactwith event definition module 401 to identify the occurrence of an eventusing event definitions maintained and stored thereby. As noted herein,event definition module 401 contains event definitions that are rules orpatterns used to identify specific user interactions with the electronicpublication and recorded metrics as events. The server event detectionmodule 402 and client event detection module 202 compare input dataassociated with a metric and user interaction to the rules or patternsof event definitions to identify events. For example, an event may bereading 100 pages of electronic publication in less than 1 hour, and maybe defined by an event definition so that this user interaction iscaptured by system 100. Accordingly, an event may be identified based onone or a combination of multiple user interactions or metrics. Forexample, one metric may be turning 1 page and an event may be turning100 pages in under one hour, so that an event is identified when 100individual metrics of turning 1 page are detected within a time periodthat is less than one hour. System 100 is operable to record a timestampas part of each recorded metric in order to compute the time period inthe event definition.

Exemplary events performed by a user on the device 102 a may include,for example, purchasing electronic publication, commenting on a page,annotating a page, bookmarking a page, like/dislike of a page,completing a chapter, completing an electronic publication, completing aseries/collection of electronic publications and completing apredetermined number of pages and chapters in the electronicpublication. In addition, events may include posting a message to socialnetwork application about the electronic publication or a third-partynetwork application 120, or other digital interaction. Events withcontextual information include for example a user turning a pre-definednumber of pages in a specific publication, such as Pride and Prejudiceby Jane Austen. Events may be based on one or more of the followingdimensions: activity based (e.g. adding a new electronic publication totheir library 210); time based (e.g. reading the electronic publicationbetween midnight and 3 am); content based (e.g. completed the electronicpublication); and location based (e.g. reading the electronicpublication on a beach in Mexico). An event may be based on userinteractions with an electronic publication, interactions with otherusers about electronic publication (conversations, chat sessions), andactivities about the electronic publication on social networkapplication or on third-party network applications 120. For example,events will record when a user shares data about electronic publicationwith other users, what the data is, and who the other users are, torecord a form of social graph for the profile of the electronicpublication.

Events definitions and metric definitions may be generated byautomatically searching content from electronic publication regardingcharacters in the electronic publication and locations in the electronicpublication. Events definitions and metric definitions may also begenerated based on programmed algorithms and a semantic analysis. A userinteraction would be the user's interaction with these generated contentbased events relating to the electronic publication, via a dialogue boxfor example. In response to such user interaction, event detectionmodules 202, 402 may identify an event. For example, the first time aparticular character is described or referred to in a page in theelectronic publication viewed by the user, event detection modules 202,402 may display an indication that the user is meeting this characterfrom the electronic publication for the first time and identify thisvirtual meeting as an event. The mechanism used to obtain data for thecontent-based events include: manual selection, keyword searching, crowdsourcing, and import of third party datasets. For example, when a newcharacter is introduced on a page of the electronic publication, eventdetection module 202, 402, may detect the occurrence of an event inresponse to receiving a request to create an event from the user, bye.g. highlighting and clicking on the name of the character. System 100may record the occurrence of a new event and propagate this detection toall other event detection modules 202, 402, corresponding to other usersthat have the same electronic publication stored in their library 210.When that page is displayed to another user, event detection modules202, 402 may identify the virtual meeting of the character as an event.The user may override this configuration and not detect an event basedon another user's event creation. In some embodiments, before a usercreated event is propagated to other event detection modules 202, 402 itmay be verified by system 100 or other reviewers.

In some embodiments, an electronic publication may be configured withevent markers so that when a specific page of the electronic publicationis displayed, event detection modules 202, 402 will detect theoccurrence of an event, based on key words, such as a location forexample, and flag the first occurrence of a location as an event,namely, the first time the user virtually encounters a new locationdescribed in the story of the electronic publication. An event may alsobe a user interaction associated with an act that occurs within thestory of the electronic publication, such as the death of a character.The user interaction may be a dislike of that page to indicate that theuser does not like that this character died. Some or all of theelectronic publications in digital warehouse may be configured withevent markers before a-copy of the electronic publication is availablevia store 410.

When event detection modules 202, 402 detects the occurrence of anevent, event data is provided to analytics engine 403 for computingstatistical data and pattern matching to rules maintained in a rulesengine. If the user interaction does not qualify as an event, the method300 returns to step 304 and system continues to monitor userinteractions with the electronic publication to identify metrics andevents. If the user activity does warrant the creation of an occurrenceof the event the method 300 proceeds to step 314.

At step 314 the system 100 collects data corresponding to the eventassociated with the electronic publication or a page thereof and recordsdata corresponding to the event as a data entry in the profile 404, 204associated with the electronic publication. If a user interaction isspecific to a page of the electronic publication then the data receivedand recorded by system 100 includes a pagestamp indicating the page inthe electronic publication. The pagestamp provides a link between thepage of the electronic publication and the data corresponding to theevent recorded in the profile. System 100 records the event data in theprofile 404, 204 associated with the electronic publication so thatscores for the electronic publication and pages thereof, and otherstatistical data may be subsequently computed and shared via socialnetwork application, third-party network applications 120, and so on.

At step 316, system 100 via analytics engine 403 computes scores for theelectronic publication and for each page in the electronic publicationusing data corresponding to events recorded in the profile of theelectronic publication. Analytics engine 403 is operable to compile,correlate, and aggregate data entries corresponding to one or moreevents or metrics based on the pagestamps in order to compute scores.The score provides an indication of a level of user interest in theelectronic publication or a page of the electronic publication. Thescore may be used to rank or recommend electronic publications and pagesthereof.

Analytics engine 403 is operable to compute data points for theelectronic publication and for each page in the electronic publicationthat aggregate those data points in order to compute the scores. Forexample, data points may include a number of purchases of the electronicpublication, a number of completions of the electronic publication, anumber of times users read the electronic publication or the page, andaverage time to read the electronic publication or the page, andannotation rate for the electronic publication or the page, highlightrate for the electronic publication or the page, the comment rate forelectronic publication or the page, the comment rate compared to theannotation rate, the bookmark rate for the electronic publication or thepage, the like/dislike ratio for the electronic publication or the page,like/dislike ratio to comment ratio, random noise range, and the numberof users reading the electronic publication or page. The data points mayrepresent numerical values that are aggregated (e.g. based on pagestampfor a score for a particular page). Each of these data points may beassociated with the weight factor to represent that some data points mayhave more influence on the total score for the electronic publication oreach page in the electronic publication. Other data points may have lessinfluence on the total score. The data points may be multiplied by theirweight factor before being aggregated to compute the score. The datapoints may also be normalized before being aggregated to ensure that thefinal score is within a specific range such as 0 to 100.

Each data point may be calculated by aggregating sub data points. Forexample a data point may be a number of purchases of electronicpublication which may be calculated based on a number of sub data pointssuch as total purchases, daily purchases, and purchases in the lastseven days. Another data point may be a number of completions ofelectronic publication which may be calculated based on sub data pointssuch as total completions, daily completions, completions in the lastseven days. A further data point may be a number of readers which may becalculated based on number of sub data points such as total readers,daily readers (with unique user identifiers), and readers or bookmarksthe last seven days. A data point may be the number of comments whichmay be calculated based on the total number of comments for theelectronic publication or a page in the electronic publication (bydifferent users, for example), daily comments, and the number ofcomments in the last seven days. A data point may be the number oflikes/dislikes which may be calculated based on the total number oflikes/dislikes of the electronic publication or page in the electronicpublication (by different users, for example), daily like/dislikes, andthe number of likes/dislikes in the last seven days. A data point may bethe number of highlights of text which may be calculated based on thetotal number of highlights in the electronic publication or page in theelectronic publication (by different users, for example), dailyhighlights, and the number of highlights in the last seven days. A datapoint may be the number of bookmarks which may be calculated based onthe total number of bookmarks made in the electronic publication or pagein the electronic publication (by different users, for example), dailybookmarks, and the number of bookmarks in the last seven days. A datapoint may be the number of annotations which may be calculated based onthe total number of annotations in the electronic publication or page inthe electronic publication (by different users, for example), dailyannotations, and the number of annotations in the last seven days.

Analytics engine 403 is operable to generate a graph of the scoresassociated with the electronic publication, where, for example, one axisrepresents the range of possible scores and the other axis representsthe pages of the electronic publication, so that the graph displays thescore associated with each page of electronic publication. The graph maybe rendered to generate a visual display of the scores for the entireelectronic publication. Analytics engine 403 is also operable togenerate a visual indicator representing the calculated score associatedwith each page and the visual indicator may be rendered to provide avisual display of the score for a particular page in the electronicpublication win that particular page is displayed to a user. Analyticsengine 403 is further operable to generate an activity feed for a pageor the whole electronic publication, where the activity feed is alisting of user interactions associated with the page, proximate pages,or the whole electronic publication.

Server 104 may be operable to analyze data associated with metrics,events, and scores to determine whether an advertisement, offer orrecommendation should be provided to a user in association with theelectronic publication. The server 104 may process data associated withmetrics, scores, and events associated with the electronic publicationto determine an advertisement, offer or recommendation. The server 104may provide an advertisement, offer, or recommendation that isassociated with the type electronic publication, when the electronicpublication is read, where the electronic publication is read, and soon. For example, if a user is reading the electronic publication late atnight an advertisement, offer or recommendation for an energy drink maybe displayed to the user. An advertisement, offer or recommendation maybe provided in a variety of media such as text, image, audio video or acombination thereof. Server 104 may analyze data associated withmetrics, scores and events to determine the particular medium in whichthe advertisement should be provided. For example, if collected metricsindicate that the electronic publication includes a video then anadvertisement, offer or recommendation may be provided as a video. Inaccordance with an example embodiment, analytics engine 403 isconfigured with rules to analyze profiles of electronic publications inlibrary 210 to make recommendations for electronic publications, basedon genre, type, and profiles 404 of other electronic publications.

In a further embodiment, a notification in relation to the electronicpublication may be transmitted to a social network application orthird-party network application 120. For example, social connectormodule 405, 205 communicates the notification about the electronicpublication as indicated under a social network user name, socialnetwork formatted text, or a combination thereof. For example, theserver 104 may provide a notification about the electronic publicationby displaying it in a rendering of the profile.

System 100 is operable to provide a visual display of all electronicpublications in a library. System 100 is operable to display theelectronic publications as a series of icons and to further display thecomputed score associated with each electronic publication to assist inselecting an electronic publication. In response to a user clicking onan icon representing electronic publication, system 100 is operable todisplay further details about the computed score associated with theelectronic publication, such as the main contributing factors for thescore and an activity thread indicating user interactions with theelectronic publication.

Reference is now made to FIG. 4, which illustrates rendered data toprovide a visual display 500 of data from exemplary embodiments ofelectronic publication profiles 404, 204. In this illustrative examplevisual display 500 displays three types of visual indicators of userinteractions with the page of electronic publication. The visual display500 includes a page of the electronic publication, a visual indicator502 representing the calculated score for the page of the electronicpublication, a visual representation 504 of a mechanism for collectingcomments about the page from users, and a visual representation 506 of amechanism for collecting data defining whether of user likes or dislikesthe page. The visual display 500 may also include mechanisms for user toannotate, highlight, and bookmark the page or portion thereof. Thevisual display 500 of data from the profile may be displayed in responseto a user activating a social overlay associated with the page and theelectronic publication.

For this example, the visual indicator 502 representing the calculatedscore for the page of the electronic publication is a semicircle thatincreases in radius as the score for a page increases. For example, if apage has a lower score it may have a smaller semicircle and if a pagehas a larger score it may have a larger semicircle. This is merely anillustrative example and other forms and types of visual indicators maybe used to represent the score. The visual indicator 502 representingthe calculated score provides a visual indication of the level of userinterest in the page of electronic publication. When the page of theelectronic publication is displayed to a user then system 100 isoperable to display the visual indicator 502 with the page.

An example user interaction with a page of an electronic publication isan indication whether a user likes or dislikes the page. When a page isdisplayed to a user then system is operable to display a visualrepresentation 506 of a mechanism for collecting data defining whetherof user likes or dislikes the page. This mechanism provides a simple andeasy way for users to express a feeling (like or dislike) about the pageas well as see what other users are feeling about the page. For examplea user may activate visual representation 506 and indicate whetherhe/she likes or dislikes the page. System 100 is operable to collectdata corresponding to the like or dislike, detect that the event hasoccurred, and record data corresponding to the like or dislike in theprofile of the electronic publication, where the data includes apagestamp corresponding to the page. When the page is subsequentlydisplayed to the user or another user, system is operable to show avisual representation of all likes or dislikes of the page. System 100is further operable to compute like or dislike ratio or score for thepage by aggregating all of the likes or dislikes for the page. System100 is operable to display an icon relating to the overall like ordislike ratio or score such as by displaying a happy face, a neutralface or sad face on the page, and by further indicating the number ofpeople that have liked the page and disliked the page.

An example user interaction with the page of electronic publication is acomment on the page. When a page is displayed to user and system isoperable to display a visual representation 504 of a mechanism forcollecting comments about the page from users. For example a user mayactivate the visual representation 504 and a dialog box may appearrequesting that the user enter text corresponding to their comment.System 100 is operable to collect the entered text, detect that an eventhas occurred, and record data corresponding to the comment in theprofile of the electronic publication, where the data includes apagestamp corresponding to the page. System 100 is operable to displayall comments associated with a page when the page is displayed to auser. The mechanism may provide an access point to community discussionthreads that have been created for a page. A user can quickly tap themechanism to add to, review or interact with the discussion thread.System 100 is further operable to compute a comment score for the pagebased on the number of comments on the page. The comment score providesan indication of the level of interest in the page based on the numberof comments on the page. System 100 is operable to display a visualrepresentation of the comment score such as by displaying an iconindicating the number of comments on the page. When a user activates theicon all comments on the page may be displayed to the user.

The visual display 500 may also include indications to show when a userand other users have created annotations on the page, bookmarks orhighlights. In some embodiments, a user may select the permissions forcertain user interactions by setting a privacy status to private toprevent the public display of the interaction. The visual display 500may also provide mechanisms to share user interactions via a socialnetwork application or third-party social networks. For example, theuser may want to share a comment or annotation on the page. The visualdisplay 500 may provide a mechanism to indicate when a user interactionhas been shared.

Referring now to FIG. 5, which illustrates rendered data to provide analternative view of the visual display 500 of data from exemplaryembodiments of electronic publication profiles 404, 204. The alternativeview of visual display 500 illustrates an overlay 510 displaying a feedof comments and user interactions associated with the page of theelectronic publication. System is operable to generate the overlay 510and feed by querying for data in the profiles 404, 204 linked to thepage stamp indicating the page. The overlay 510 includes a mechanism forcollecting comments from the user about the page for inclusion in theprofile of the electronic publication and link to the page via apagestamp.

Referring now to FIG. 6, which illustrates rendered data to provide avisual display 600 of data from exemplary embodiments of electronicpublication profiles 404, 204. The visual display 600 includesstatistical data corresponding to the e-book as a whole. For example,the visual display may include the score for the e-book as a whole andmay show the value of each major contributing component used to computethe score. The statistical data may include the number of times theelectronic publication has been read, the number of comments made at anypage of the electronic publication or on the electronic publication as awhole, the number of likes associated with any page of the electronicpublication or with electronic publication as a whole, the number ofdislikes associated with any page of the electronic publication or withelectronic publication as a whole. The visual display 600 also providesa visual representation of users currently reading electronicpublication and also provides a visual representation of a forum forusers to comment on the electronic publication and to review otherusers' comments. System 100 is operable to generate the visual display600 using data stored in the profile of the electronic publication. Thevisual display 600 may also include a visual indication of the scoreassociated with the electronic publication and may also include a visualindication of the score associated with each page of the electronicpublication, such as by displaying a graph. Analytics engine 403computes statistical data using rules and received event data inprofiles 404, 204. The visual display 600 may provide an activity feedfor the e-book, and may provide an aggregate of all user interactionsidentified as events or otherwise associated with the electronicpublication, and may include on aggregate comment virtual wall involvingall the comments from pages of the electronic publication. The system100 may provide a filter mechanism to filter out specific userinteractions that may be deemed as a “spoiler” for the e-book byanalyzing the contents of the user interactions. This may prevent a userthat has not completed the electronic publication from learning ofspecific details of later parts in the electronic publication. Thesystem 100 enables a user to interact with other user interactions suchas commenting on or replying to another user's comment or liking acomment, for example.

Example embodiments have been described herein in relation to electronicpublications. However, the described embodiments may also be used forother types of electronic content, such as movies, television shows,music albums or songs. In accordance with other example embodiments, themetrics, events, and scores may relate to different types of electroniccontent. For example, a metric or event may relate to listening to asong or album, liking or disliking a portion of a song, commenting on aportion of a movie, and so on.

The system 100 and method 300 described herein may provide an advantageof enhancing the digital reading experience by making what waspreviously a predominantly solitary activity interactive, fun, socialand meaningful. By managing profiles of electronic publications andanalyzing metrics, events associated with the electronic publication tocompute scores associated with the electronic publication, the cultureof reading may enhance the digital experience of reading electronicpublications. For example, the system 100 and method 300 may provide aconnection between the users reading the same electronic publication,and provide a mechanism through the score to indicate a level of userinterest in a particular page of the electronic publication. The system100 and method 300 may permit the user to discover and share favoriteelectronic publications and passages within electronic publications,characters of electronic publications and places within electronicpublications with other users and friends via the profiles of theelectronic publications, social network application and third-partynetwork applications 120. The system 100 and method 300 may compute andrecord statistical data, scores, and a timeline of events.

The system 100 and method 300 described herein may increase engagementby the user with electronic publication and increase the frequency ofreading electronic publications. The profile provides a mechanism torecord real-time metrics based on user interactions with electronicpublication. The profile may also record contextual information forevents associated with electronic publication, such as a user's currentlocation when the event occurs. Recorded locations may be identified ona map and displayed to the user as part of a rendering of data in theprofile to create a visual display for the user.

The system 100 and method 300 described herein may provide aninteractive software application to collect metrics from the user, alisting of all electronic publications in the user's library, a softwareapplication that computes and displays a list of friends of the userthat are currently reading an electronic publications, what electronicpublication they are currently reading, and where they are currentlyreading the electronic publication. The system 100 and method 300described herein may provide recommendations and filters based onrecorded metrics to provide recommendations and other computerstatistics to the user, such as for example a list of electronicpublications that other users are reading who are within the samegeographic area as the user. The system 100 and method 300 describedherein may enable a user to communicate particular metrics and events toparticular users, or all users of the system 100. For example, eventsfor a particular user may be displayed as a stream of data associatewith electronic publication and system 100 may be configured to displaya portion of events all events. As a further example, system 100 mayenable one user to send a message to another user of system 100 usingsocial network application or third-party network application 120.

The system 100 and method 300 described herein may provide a communityof users, connected as a network of nodes in the social networkapplication, and further connected to third-party network applications120. For example, the system 100 and method 300 is operable to manage anetwork of users and electronic publications. The system 100 and method300 is operable to store user profiles for users, each being a user ofat least one device configured to access at least one electronicpublication for each user in a memory, wherein each user profilecomprises a user identifier identifying the user. The system 100 andmethod 300 is operable to store profiles for electronic publications.The system 100 and method 300 is operable to collect data correspondingto events associated with the page of the electronic publication,wherein the data comprises a pagestamp and a user identifier, whereinthe pagestamp indicates the page in the electronic publication, andwherein the user identifier indicates the user. The system 100 andmethod 300 is operable to record at least a portion of the datacorresponding to the event as a data entry in the profile electronicpublication and/or user, wherein the data entry comprises the pagestampand the user identifier.

The system 100 and method 300 may provide a community to enable users tocommunicate and share electronic publications, trends, content ofelectronic publications (quotes), and events with other users. Thesystem 100 and method 300 is operable to aggregate these userinteractions to compute a score for the pages of electronic publicationto provide a visual indication of the level of user interest in aparticular page or electronic publication. The system 100 and method 300may filter shared data by geographic location, such that a user can seewhat electronic publications other users in, for example, the same cityare also reading.

The system 100 and method 300 may configure electronic publications withvirtual markers to assist system 100 and method 300 in identifyingevents, such as when a user will first encounter a character describedin an electronic publication and when user comments on a page forexample. These virtual markers may be created by multiple users of thesystem 100 or may automatically be created by keyword searching and thelike. The virtual markers may also be associated with an advertisementso that when system 100 displays a page of an electronic publicationannotated with a virtual marker an associated advertisement or sponsoredoffer is displayed. As noted herein, the system 100 and method 300records data associated with metrics and events in profiles and maydisplay recorded data for the user as part of a rendering of theelectronic publication or pages thereof. The data associated withmetrics and events may include timestamps for when the metrics andevents occur, and the data associated with the metrics and events may bedisplayed to a user as a time line. Further example metrics include,where users are reading the electronic publication, when users arereading the electronic publication, what users are reading theelectronic publication, time taken to read the electronic publication.

While the above description provides examples of the embodiments, itwill be appreciated that some features and/or functions of the describedembodiments are susceptible to modification without departing from thespirit and principles of operation of the described embodiments.Accordingly, what has been described above has been intended to beillustrative of the invention and non-limiting and it will be understoodby persons skilled in the art that other variants and modifications maybe made without departing from the scope of the invention as defined inthe claims appended hereto.

1. A method of managing profiles for electronic content comprising:storing a plurality of profiles for a plurality of electronic contentitems, wherein each profile corresponds to an electronic content itemselected from the plurality of electronic content items; if a userinteraction with the electronic content item meets an event definition,identifying the user interaction as an event associated with theelectronic content item, wherein the identifying step is carried outusing a processor; collecting data corresponding to the event associatedwith the electronic content item, wherein the data comprises apagestamp, wherein each pagestamp indicates a reference point within theelectronic content item; and recording at least a portion of the datacorresponding to the event as a data entry in the profile correspondingto the electronic content item, wherein the data entry comprises thepagestamp.
 2. The method of claim 1 wherein the plurality of electroniccontent items is a plurality of electronic publications, and wherein theuser interaction with the electronic content item is a user interactionwith a page of an electronic publication of the plurality of electronicpublications, and wherein the pagestamp corresponds to the page withinthe electronic publication.
 3. The method of claim 1 further comprisingcomputing a score for each reference point in the electronic contentitem using data corresponding to events recorded in the profile of theelectronic content item, wherein the score for each reference point iscomputed by correlating the event data recorded in the profile of theelectronic content item with the pagestamp of each data entry.
 4. Themethod of claim 2 further comprising computing a score for each page inthe electronic publication using data corresponding to events recordedin the profile of the electronic publication, wherein the score for eachpage is computed by correlating the event data recorded in the profileof the electronic publication with the pagestamp of each data entry. 5.The method of claim 4 wherein the score provides an indication of alevel of user interest in the page of the electronic publication.
 6. Themethod of claim 2 wherein an event associated with the page of theelectronic publication is selected from the group consisting of: turningto the page, turning the page, commenting on the page, indicating a likeor dislike of the page, highlighting a portion of the page, annotating aportion of the page, sharing a portion of the page, bookmarking thepage, indicating a like or dislike of a comment, replying to a comment,and indicating a like or dislike to a reply to a comment.
 7. The methodof claim 4 wherein computing the score for the page comprises computinga plurality of data points for the page and aggregating the plurality ofdata points.
 8. The method of claim 7 wherein each data point of theplurality of data points is associated with a weight factor and whereincomputing the score comprises weighting each data point using thecorresponding weight factor and aggregating the weighted data points. 9.The method of claim 7 wherein the data points are selected from thegroup consisting of: number of purchases of the electronic publication,a number of completions of the electronic publication, a number of timesusers read the electronic publication or the page, average time to readthe electronic publication or the page, share rate, annotation rate,highlight rate, comment rate, comment rate compared to annotation rate,bookmark rate, like or dislike ratio; like or dislike to comment ratio,random noise range, number of users of the electronic publication andpage thereof.
 10. The method of claim 1 further comprising computing ascore for the electronic content using the data entries recorded in theprofile of the electronic content.
 11. A method of displaying electroniccontent to a user the method comprising: collecting data about aplurality of user interactions at a reference point within theelectronic content; calculating a score associated with the referencepoint within electronic content using the data, wherein the calculatingstep is carried out using a processor; and displaying a visual indicatorrepresenting the score associated with the reference point within theelectronic content when the electronic content is displayed to a user.12. The method of claim 11 wherein the electronic content is anelectronic publication, and wherein the user interaction is associatedwith a page of the electronic publication, and wherein the methodinvolves calculating a score for the page of the electronic publicationand displaying a visual indicator representing the score for the page ofthe electronic publication.
 13. The method of claim 12 wherein the scoreprovides an indication of a level of user interest in the page of theelectronic publication.
 14. The method of claim 12 wherein the userinteraction is selected from the group consisting of: purchasing a book,completing a book, reading a book, turning to the page, turning thepage, sharing the page, commenting on the page, indicating a like ordislike of the page, highlighting a portion of the page, annotating aportion of the page, and bookmarking the page.
 15. The method of claim12 wherein the calculating step is based on data selected from the groupconsisting of: number of purchases of the electronic publication, numberof completions of the electronic publication, number of times theelectronic publication is read, number of times the electronicpublication or the page is read, average time to complete the electronicpublication or the page, average time spent reading the electronicpublication or the page when not complete yet, share rate; annotationrate, highlight rate, comment rate, comment rate compared to annotationrate, bookmark rate, like or dislike ratio, like or dislike to commentratio, random noise range, and number of users reading the electronicpublication or the page.
 16. The method of claim 12 further comprising:displaying on the page a link to an interface for collecting datadefining whether the users like or dislike the page; using theinterface, collecting data defining whether the users like or dislikethe page; computing a like or dislike reading score for the page basedon the data defining whether the users like or dislike the page; anddisplaying a visual representation of the like or dislike reading score.17. The method of claim 12 further comprising: displaying on the page alink to an interface for collecting comments about the page from theusers; using the interface, collecting comment data about the page fromthe users; computing a comment score for the page based on the commentdata; and displaying a visual representation of the comment score and atleast a portion of the collected comments.
 18. The method of claim 11further comprising: collecting statistical data about the userinteraction with the electronic content item; calculating a scoreassociated with the electronic content item using the statistical data,wherein the score represents a level of user interest in the electroniccontent item; displaying a visual representation of the score associatedwith the electronic content item.
 19. The method of claim 11 furthercomprising computing a score for each reference point within theelectronic content item using the collected data.
 20. The method ofclaim 11 further comprising displaying a visual indicator representingthe calculated score for each reference point within the electroniccontent item.
 21. A method of managing a network of users and electronicpublications comprising: storing a plurality of profiles for a pluralityof users, wherein each user profile is associated with a user of atleast one device configured to access at least one electronicpublication in a memory, wherein each user profile comprises a useridentifier identifying the user; storing a plurality of profiles for aplurality of electronic publications, wherein each electronicpublication comprises a plurality of pages; if a user interaction with apage of one of the plurality of electronic publications meets an eventdefinition, identifying the user interaction as an event associated withthe page of the electronic publication, wherein the identifying step iscarried out using a processor; collecting data corresponding to theevent associated with the page of the electronic publication, whereinthe data comprises a pagestamp and the user identifier, wherein thepagestamp indicates the page in the electronic publication, and whereinthe user identifier indicates the user associated with the userinteraction; and recording at least a portion of the data correspondingto the event as a data entry in the profile of the electronicpublication, wherein the data entry comprises the pagestamp and the useridentifier.
 22. The method of claim 21 further comprising storing aplurality of event definitions.
 23. The method of claim 22 whereinidentifying the user interaction as an event comprises matching inputdata to at least one of the plurality of event definitions.
 24. Themethod of claim 21 further comprising providing a notification of anoccurrence of the event to a social network application.
 25. The methodof claim 21 wherein receiving data associated with the event furthercomprises receiving a time period associated with reading the electronicpublication.
 26. The method of claim 21 wherein receiving dataassociated with the event further comprises receiving content from theat least one electronic publication.
 27. The method of claim 21 whereinreceiving data associated with the event further comprises receiving alocation of the at least one device configured to access the at leastone electronic publication.
 28. The method of claim 21 wherein the eventis associated with at least one of the group consisting of: commentingon the page, annotating the page, indicating a like or dislike about thepage, turning a number of pages in the electronic publication, addingthe electronic publication to an electronic library, finishing theelectronic publications, reading the electronic publication in alocation, and reading about a character on the page.
 29. A system formanaging profiles for electronic content, the system comprising: aprofile module configured to: store a plurality of profiles for aplurality of electronic content items in a memory, wherein each profilecomprises an electronic content identifier associated with thecorresponding electronic content item; an event detection moduleconfigured to identify, using a processor, a user interaction with areference point within the electronic content item as an event if theuser interaction meets at least one event definition, and to receivedata associated with the event, wherein the data includes a pagestampindicating the reference point within the electronic content; andwherein the profile module is further configured to record at least aportion of the data associated with the event in the profile of theelectronic content item.
 30. The system of claim 29 wherein theelectronic content item is an electronic publication, and wherein theuser interaction is with a page of the electronic publication, andwherein the pagestamp indicates the page within the electronicpublication.
 31. The system of claim 29 further comprising: an eventdefinition module configured to define a plurality of event definitions;and a rules engine configured to store and manage the plurality of eventdefinitions.
 32. The system of claim 29 wherein the event detectionmodule is configured to identify an event by interacting with the rulesengine to match input data to the at least one event definition.
 33. Thesystem of claim 30 further comprising an analytics engine configured toprocess data associated with events to compute the scores for each pagein the electronic publication by correlating the data associated withthe events based on the pagestamp.
 34. A method of managing profiles forelectronic publications comprising: storing a plurality of profiles fora plurality of electronic publications, wherein each profile correspondsto an electronic publication selected from the plurality of electronicpublications; detecting on a device a user interaction with a page of anelectronic publication of the plurality of electronic publications; ifthe user interaction with the page of the electronic publication meetsan event definition, identifying the user interaction as an eventassociated with the page of the electronic publication, wherein theidentifying step is carried out using a processor; collecting datacorresponding to the event, wherein the data comprises a pagestamp,wherein each pagestamp indicates the page within the electronicpublication; recording at least a portion of the data corresponding tothe event as a data entry in the profile corresponding to the electronicpublication, wherein the data entry comprises the pagestamp; computing ascore for each page in the electronic publication using datacorresponding to events recorded in the profile of the electronicpublication, wherein the score for each reference point is computed bycorrelating the event data recorded in the profile of the electroniccontent item with the pagestamp of each data entry, wherein the scoreprovides an indication of a level of user interest in the page of theelectronic publication, and displaying a visual indicator representingthe score for each page of the electronic publication when the page ofthe electronic publication is displayed on the device.
 35. A system ofmanaging profiles for electronic publications comprising: a profilemodule configured to store a plurality of profiles for a plurality ofelectronic publications, wherein each profile corresponds to anelectronic publication selected from the plurality of electronicpublications; an event detection module configured to: detect on adevice a user interaction with a page of an electronic publication ofthe plurality of electronic publications; if the user interaction withthe page of the electronic publication meets an event definition, use aprocessor to identify the user interaction as an event associated withthe page of the electronic publication; collect data corresponding tothe event, wherein the data comprises a pagestamp, wherein eachpagestamp indicates the page within the electronic publication; and anevent analytics engine configured to use the processor to compute ascore for each page in the electronic publication using datacorresponding to events recorded in the profile of the electronicpublication, wherein the score for each reference point is computed bycorrelating the event data recorded in the profile of the electroniccontent item with the pagestamp of each data entry, wherein the scoreprovides an indication of a level of user interest in the page of theelectronic publication, wherein the profile module is further configuredto: record at least a portion of the data corresponding to the event asa data entry in the profile corresponding to the electronic publication,wherein the data entry comprises the pagestamp; and display a visualindicator representing the score for each page of the electronicpublication when the page of the electronic publication is displayed onthe device.